Skip to main content

383. Ransom Note

Easy

Description

Given two strings ransomNote and magazine, return true if ransomNote can be constructed by using the letters from magazine and false otherwise.

Each letter in magazine can only be used once in ransomNote.

Example 1:

Input: ransomNote = "a", magazine = "b"
Output: false

Example 2:

Input: ransomNote = "aa", magazine = "ab"
Output: false

Example 3:

Input: ransomNote = "aa", magazine = "aab"
Output: true

Constraints:

1 <= ransomNote.length, magazine.length <= 105
ransomNote and magazine consist of lowercase English letters.

解題思路

先定義一個 Counter,並記錄 magazine 中出現過的單字頻率,接著使用 Counter 當基底逐一減去 ransomNote 的單字,能成功的話就是 true,有一個字不存在就是 false 。

心得

練習 Counter 的基本題,感覺可以再最佳化寫法!

然後這題的變數叫做 magazine + 題目名稱叫做 Ransom Note(勒索信),就4用雜誌單字拼拼湊湊來讓收到的認不出筆跡的那個